package com.bhudy.base;

import java.util.List;

interface Sql {

    String getKeyName(Class clazz);

    String getLimitSql(String sql, QueryFilter queryFilter, List<Object> argList);

    <C> String updateSql(C entity, QueryFilter queryFilter, List<Object> argList);

    <C> String updatesSql(List<C> entityList, List<Object> argList);

    <C> String insertSql(List<C> entityList, List<Object> argList);

    String deleteSql(Class clazz);

    String countSql(Class clazz);

    String selectSql(Class clazz);

    String where(QueryFilter queryFilter, List<Object> argList);

    String getOrderBy(QueryFilter queryFilter);

    String keyword(String name);
}
